1. Field of the Invention
The present invention relates to the field of digital computer systems, and more particularly, to power management in a system having multiple buses and system arbitration.
2Description of Related Art
In computer systems, electronic chips and other components are connected with one another by buses. A variety of components can be connected to the bus providing intercommunication between all of the devices that are connected to the bus. One type of bus which has gained wide industry acceptance is the industry standard architecture (ISA) bus. The ISA bus has twenty-four (24) memory address lines which therefore provides support for up to sixteen (16) megabytes of memory. The wide acceptance of the ISA bus has resulted in a very large percentage of devices being designed for use on the ISA bus. However, higher-speed input/output devices commonly used in computer systems require faster buses. A solution to the general problem of sending and receiving data from the processor to any high-speed input device is a local bus. Unlike the ISA bus, which operates relatively slowly with limited bandwidth, a local bus communicates at system speed and carries data in 32-bit blocks. Local bus machines remove from the main system bus those interfaces that need quick response, such as memory, display, and disk drives. One such local bus that is gaining acceptance in the industry is the peripheral component interconnect (PCI) bus. The PCI bus can be a 32 or 64-bit pathway for high-speed data transfer. Essentially, the PCI bus is a parallel data path provided in addition to an ISA bus. The system processor and memory can be attached directly to the PCI bus, for example. Other devices such as graphic display adapters, disk controllers, etc. can also attach directly or indirectly (e.g., through a host bridge) to the PCI bus.
A bridge chip is provided between the PCI bus and the ISA bus in order to provide communication between devices on the two buses. The bridge chip essentially translates the ISA bus cycles to PCI bus cycles, and vice versa.
A computer system can have other types of expansion buses instead of, or in addition to, the ISA bus. These include the Microchannel (a trademark of IBM) bus, the Apple bus, etc. Numerous types of devices are available for use with these various bus architectures. In a computer system that includes a PCI bus and an expansion bus, such as the ISA, Microchannel or Apple buses, the devices in the system can be categorized as PCI-compliant devices that adhere to the PCI specified architecture, and non-PCI compliant devices that do not adhere to the PCI specified architecture.
The devices in most computer systems must arbitrate for use of various resources in the system, such as buses, since the resources are often shared by a plurality of devices. In an arbitration scheme, devices contend for the use of the shared resource, either through a central arbitration mechanism, or a distributed arbitration scheme. A protocol is normally followed in which a device that wants to use the resource will assert a request signal to the arbitration mechanism. Assuming that the device wins the arbitration, the arbitration mechanism will assert a grant or acknowledge signal, allowing the device to use the resource.
Many computer systems now use some type of "power management" to temporarily place the computer system into a suspend mode in which power is conserved. For example, if the computer system is a laptop computer, a power management device may cause a computer system to enter the suspend mode to save power whenever the laptop is closed. The suspend mode may also be entered if a key on the keyboard has not been pressed for a prolonged period of time. There are numerous other events which will cause a power management device to place the computer system into a suspend mode, and there are numerous available power management devices.
After some period of time, or a defined event occurs (such as the opening of the laptop cover), the power management device enters a resume mode. In the resume mode, the power management device essentially restores the computer system to the state it was in before it entered the suspend mode.
In a multi-bus system having system arbitration performed by the bridge chip, the fact that different types of devices, some PCI-compliant and some non-PCI-compliant, are resident in the system. These different types of devices typically have different arbitration protocols. When the multi-bus system is to include a power management capability, providing a graceful entering and exiting of the low-power suspend mode poses a difficult problem for a system designer due to these different arbitration protocols.